package com.gopay.common.domain.cbrmb.internationalcard;

import java.math.BigDecimal;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.Transient;
import javax.persistence.Version;

import com.gopay.common.domain.BaseEntity;

/**
 * 拒付规则
 * 
 * @ClassName: CbRmbIntlCardDishonorRuleDtl 
 * @Description: TODO 
 * @author gd.cui 
 * @date 2017年10月31日 下午1:44:12
 */
@Entity
@Table(name = "CB_RMB_INTLCARD_DISHONOR_RULE")
public class CbRmbIntlCardDishonorRule extends BaseEntity {
	/**
	 * @Fields serialVersionUID : TODO(用一句话描述这个变量表示什么)
	 */
	private static final long serialVersionUID = 1L;

	private Long seq;

	private String custId;

	private Integer dishonorMaxCount;

	private Integer dishonorWarningCount;

	private BigDecimal dishonorRate;

	private BigDecimal dishonorWarningRate;

	private BigDecimal dishonorMaxAmt;

	private BigDecimal dishonorWarningAmt;

	private Date createTime;

	private int version;

	private Date updateTime;
	
	private String updateTimeStr;
	
    private String isAdd;
    
	@Id
	@SequenceGenerator(name = "sq", sequenceName = "CB_RMB_INTL_CARD_RULE_SEQ")
	@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "sq")
	@Column(name = "SEQ", unique = true, nullable = false)
	public Long getSeq() {
		return seq;
	}

	public void setSeq(Long seq) {
		this.seq = seq;
	}

	@Column(name = "CUST_ID")
	public String getCustId() {
		return custId;
	}

	public void setCustId(String custId) {
		this.custId = custId;
	}

	@Column(name = "MAX_COUNT")
	public Integer getDishonorMaxCount() {
		return dishonorMaxCount;
	}

	public void setDishonorMaxCount(Integer dishonorMaxCount) {
		this.dishonorMaxCount = dishonorMaxCount;
	}

	@Column(name = "WARNING_COUNT")
	public Integer getDishonorWarningCount() {
		return dishonorWarningCount;
	}

	public void setDishonorWarningCount(Integer dishonorWarningCount) {
		this.dishonorWarningCount = dishonorWarningCount;
	}

	@Column(name = "RATE", precision = 20)
	public BigDecimal getDishonorRate() {
		return dishonorRate;
	}

	public void setDishonorRate(BigDecimal dishonorRate) {
		this.dishonorRate = dishonorRate;
	}

	@Column(name = "WARNING_RATE", precision = 20)
	public BigDecimal getDishonorWarningRate() {
		return dishonorWarningRate;
	}

	public void setDishonorWarningRate(BigDecimal dishonorWarningRate) {
		this.dishonorWarningRate = dishonorWarningRate;
	}

	@Column(name = "MAX_AMT", precision = 20)
	public BigDecimal getDishonorMaxAmt() {
		return dishonorMaxAmt;
	}

	public void setDishonorMaxAmt(BigDecimal dishonorMaxAmt) {
		this.dishonorMaxAmt = dishonorMaxAmt;
	}

	@Column(name = "WARNING_AMT", precision = 20)
	public BigDecimal getDishonorWarningAmt() {
		return dishonorWarningAmt;
	}

	public void setDishonorWarningAmt(BigDecimal dishonorWarningAmt) {
		this.dishonorWarningAmt = dishonorWarningAmt;
	}

	@Column(name = "CREATE_TIME")
	@Temporal(TemporalType.TIMESTAMP)
	public Date getCreateTime() {
		return createTime;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	@Version
	@Column(name = "VERSION", nullable = false, precision = 22, scale = 0)
	public int getVersion() {
		return version;
	}

	public void setVersion(int version) {
		this.version = version;
	}

	@Column(name = "UPDATE_TIME")
	@Temporal(TemporalType.TIMESTAMP)
	public Date getUpdateTime() {
		return updateTime;
	}

	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}
    
	@Transient
	public String getUpdateTimeStr() {
		return updateTimeStr;
	}

	public void setUpdateTimeStr(String updateTimeStr) {
		this.updateTimeStr = updateTimeStr;
	}

	@Transient
	public String getIsAdd() {
		return isAdd;
	}

	public void setIsAdd(String isAdd) {
		this.isAdd = isAdd;
	}

	
}
